/*
    Bandleader
    Copyright (c) 2006 by Grant Yoshida

    Licensed under the GPL version 2 or later,
    please see COPYING for details.
*/

#ifndef Notation_Leadsheet_h
#define Notation_Leadsheet_h

#include <QtCore/QObject>
#include <QtCore/QStringList>

namespace Notation
{

class Leadsheet : public QObject
{
public:
    Leadsheet(QObject *parent);

    QStringList chords() const;

    QString chordAt(int index) const;
    int numChords() const;

    QStringList chordsInBar(int barNumber) const;

    int barNumberOf(int index) const;
    int indexOf(int barNumber) const;

    class TimeSignature;
    const TimeSignature &timeSignatureAt(int index) const;

    class Key;
    const Key &keyAt(int index) const;

private:
    QStringList m_chords;
};

}

#endif
